package com.itheima.utils;

import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

/**
 * @author 上官徵羽
 * @version 1.0
 * @since 2025-08-16 15:17
 */
public class JWTkey {
    /** 传输数据构建令牌 */
    public static String testEmpJWT(Integer id, String name){
        Map<String,Object> claims = new HashMap<>();
        claims.put("id",id);
        claims.put("name",name);
        // 第一部分签名算法
        String jwt = Jwts.builder()
                .signWith(io.jsonwebtoken.SignatureAlgorithm.HS256, "Aysiiaa")
                .addClaims(claims)
                .setExpiration(new Date(System.currentTimeMillis()+12*3600*1000))
                .compact();
        return jwt;
    }
    /** 解析令牌 */
    public static Claims parsingEmpJWT(String jwt){
        return Jwts.parser()
                .setSigningKey("Aysiiaa")
                .parseClaimsJws(jwt)
                .getBody();
    }
}
